home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Champak 52
/
Volume 52 - JOGO DISK .iso
/
Games
/
skipandgouls.swf
/
scripts
/
__Packages
/
maze
/
MazeModel.as
< prev
next >
Wrap
Text File
|
2007-10-01
|
4KB
|
113 lines
class maze.MazeModel
{
function MazeModel(l_nWidth, l_nHeight)
{
this.nWidth = l_nWidth;
this.nHeight = l_nHeight;
this.aElementList = [];
this.generateEmptyGrid();
}
function addElementFloor(l_nX, l_nY, l_nWidth, l_nHeight)
{
this.aElementList.push({element:maze.MazeData.ELEMENT_FLOOR,w:l_nWidth,h:l_nHeight,x:l_nX,y:l_nY});
}
function addElementWall(l_nX, l_nY)
{
this.aElementList.push({element:maze.MazeData.ELEMENT_WALL,x:l_nX,y:l_nY});
}
function addElementWalkway(l_nX, l_nY, l_nWidth)
{
this.aElementList.push({element:maze.MazeData.ELEMENT_WALKWAY,x:l_nX,y:l_nY,width:l_nWidth});
}
function addElementPipe(l_nX, l_nY, l_nHeight, l_bLastPipe)
{
this.aElementList.push({element:maze.MazeData.ELEMENT_PIPE,x:l_nX,y:l_nY,height:l_nHeight,lastPipe:l_bLastPipe});
}
function addElementSpiderWeb(l_nX, l_nY, l_bFlipped)
{
this.aElementList.push({element:maze.MazeData.ELEMENT_SPIDERWEB,x:l_nX,y:l_nY,flipped:l_bFlipped});
}
function addElementWindow(l_nX, l_nY, l_nWidth, l_nNumber)
{
this.aElementList.push({element:maze.MazeData.ELEMENT_WINDOW,x:l_nX,y:l_nY,width:l_nWidth,number:l_nNumber});
}
function addElementCandle(l_nX, l_nY)
{
this.aElementList.push({element:maze.MazeData.ELEMENT_CANDLE,x:l_nX,y:l_nY});
}
function addElementExit(l_nX, l_nY)
{
this.aElementList.push({element:maze.MazeData.ELEMENT_EXIT,x:l_nX,y:l_nY});
}
function addElementDutchMan(l_nX, l_nY)
{
this.aElementList.push({element:maze.MazeData.ELEMENT_DUTCHMAN,x:l_nX,y:l_nY});
}
function addElementVampiRay(l_nX, l_nY, l_nWidth)
{
this.aElementList.push({element:maze.MazeData.ELEMENT_VAMPIRAY,x:l_nX,y:l_nY,width:l_nWidth});
}
function addElementSkeletuna(l_nX, l_nY)
{
this.aElementList.push({element:maze.MazeData.ELEMENT_SKELETUNA,x:l_nX,y:l_nY});
}
function addElementToken(l_nX, l_nY)
{
this.aElementList.push({element:maze.MazeData.ELEMENT_TOKEN,x:l_nX,y:l_nY});
}
function addElementPumpkin(l_nX, l_nY)
{
this.aElementList.push({element:maze.MazeData.ELEMENT_PUMPKIN,x:l_nX,y:l_nY});
}
function addElementSlug(l_nX, l_nY)
{
this.aElementList.push({element:maze.MazeData.ELEMENT_SLUG,x:l_nX,y:l_nY});
}
function addElementBurger(l_nX, l_nY)
{
this.aElementList.push({element:maze.MazeData.ELEMENT_BURGER,x:l_nX,y:l_nY});
}
function addElementWaffle(l_nX, l_nY)
{
this.aElementList.push({element:maze.MazeData.ELEMENT_WAFFLE,x:l_nX,y:l_nY});
}
function getElementList()
{
return this.aElementList;
}
function debug()
{
var _loc3_ = undefined;
trace("===================");
var _loc4_ = 0;
while(_loc4_ < this.nHeight)
{
_loc3_ = "";
var _loc2_ = 0;
while(_loc2_ < this.nWidth)
{
_loc3_ += this.aGrid[_loc4_][_loc2_];
_loc2_ = _loc2_ + 1;
}
trace(_loc3_);
_loc4_ = _loc4_ + 1;
}
}
function generateEmptyGrid()
{
this.aGrid = [];
var _loc3_ = 0;
while(_loc3_ < this.nHeight)
{
this.aGrid.push([]);
var _loc2_ = 0;
while(_loc2_ < this.nWidth)
{
this.aGrid[_loc3_][_loc2_] = maze.MazeData.TILE_EMPTY;
_loc2_ = _loc2_ + 1;
}
_loc3_ = _loc3_ + 1;
}
}
}